//导入配置
const config=require('./CONFIG');

//导入依耐
const gulp = require('gulp');
// const rename = require('gulp-rename');
// const concat = require('gulp-concat');
// const uglify = require('gulp-uglify');
console.log(config)
//API服务器---------------------------------------------------
const path = require('path');
const nodemon = require('gulp-nodemon');
const browserSync = require('browser-sync').create();
const server = path.resolve(__dirname, config.apiFilePath);
gulp.task('browser-sync', ['nodemon'], () => browserSync.init(null, {}));
// browser-sync 监听文件
gulp.task('api', ['browser-sync'], () => gulp.watch(config.apiFilePath+'/'+config.apiFileName, ['bs-delay']));
// 延时刷新
gulp.task('bs-delay', () => setTimeout(() => browserSync.reload(), 1000));
// 服务器重启
gulp.task('nodemon', cb => {
    // 设个变量来防止重复重启
    let started = false;
    let stream = nodemon({
        script: config.apiFilePath+'/server.js',
        ext: 'js',
        env: { NODE_ENV: 'development' },
        watch: [server]
    });
    stream
        .on('start', () => (started = !started && !cb()))
        .on('crash', () => stream.emit('restart', 10));
});

// //ftp上传
// var gutil = require('gulp-util');
// var ftp = require('gulp-ftp');
// let menuName = config.menu;
// let ftpConfig1 = { ...config.ftp, remotePath: config.ftp.remotePath +'/'+ menuName };
// let ftpConfig2 ={...config.ftp,remotePath: config.ftp.remotePath+'/common'} ;
// let ftpConfig3 = { ...config.ftp, remotePath: config.ftp.remotePath+'/common/' + menuName };
// gulp.task(menuName + '1', () =>
//     gulp
//         .src(config.proPath+'/' + menuName + '/*')
//         .pipe(ftp(ftpConfig1))
//         .pipe(gutil.noop())
// );
// gulp.task(menuName + '2', () =>
//     gulp
//         .src(config.proPath+'/common/' + menuName + '*')
//         .pipe(ftp(ftpConfig2))
//         .pipe(gutil.noop())
// );

// gulp.task(menuName + '3', () =>
//     gulp
//         .src(config.proPath+'/common/' + menuName + '/*')
//         .pipe(ftp(ftpConfig3))
//         .pipe(gutil.noop())
// );
// gulp.task(menuName, [menuName + '1', menuName + '2', menuName + '3']);




// //普通全局js打包
// gulp.task('commjs', ()=>
//     gulp
//         .src(['./app/commjs/*.js', '!./app/commjs/*.c.js', '!./app/commjs/comm.js'])
//         .pipe(concat('comm.c.js', { newLine: '\n//注释：文件分割\n' }))
//         .pipe(gulp.dest('./public/common/'))
//         .pipe(uglify()) //压缩JS
//         .pipe(rename('comm.js'))
//         .pipe(gulp.dest('./public/common/'))
// );
